package br.com.speedprevweb.model;
// Generated 18/02/2014 22:47:57 by Hibernate Tools 3.6.0


import java.math.BigDecimal;
import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * RequerimentoCompensacao generated by hbm2java
 */
@Entity
@Table(name="RequerimentoCompensacao"
    ,schema="dbo"
    ,catalog="db_compensacao"
)
public class RequerimentoCompensacao  implements java.io.Serializable {


     private int idRequerimentoCompensacao;
     private TipoRegime tipoRegime;
     private ServidorMatricula servidorMatricula;
     private TipoRequerimento tipoRequerimento;
     private TipoBeneficio tipoBeneficio;
     private int qtTempoTotal;
     private int qtTempoRgps;
     private BigDecimal vlBeneficioConcessao;
     private Date dtInicioBeneficio;
     private Date dtCessacaoBeneficio;
     private String dsProtocoloCertidao01;
     private String dsTempoLiquido01;
     private String dsProtocoloCertidao02;
     private String dsTempoLiquido02;
     private String dsProtocoloCertidao03;
     private String dsTempoLiquido03;
     private String dsProtocoloCertidao04;
     private String dsTempoLiquido04;
     private String dsOrgaoLotacao;
     private Date dtIngresso;
     private Date dtEmissor;
     private Set indeferimentoRequerimentoCompensacaos = new HashSet(0);

    public RequerimentoCompensacao() {
    }

	
    public RequerimentoCompensacao(int idRequerimentoCompensacao, TipoRegime tipoRegime, ServidorMatricula servidorMatricula, TipoRequerimento tipoRequerimento, TipoBeneficio tipoBeneficio, int qtTempoTotal, int qtTempoRgps, BigDecimal vlBeneficioConcessao, Date dtInicioBeneficio) {
        this.idRequerimentoCompensacao = idRequerimentoCompensacao;
        this.tipoRegime = tipoRegime;
        this.servidorMatricula = servidorMatricula;
        this.tipoRequerimento = tipoRequerimento;
        this.tipoBeneficio = tipoBeneficio;
        this.qtTempoTotal = qtTempoTotal;
        this.qtTempoRgps = qtTempoRgps;
        this.vlBeneficioConcessao = vlBeneficioConcessao;
        this.dtInicioBeneficio = dtInicioBeneficio;
    }
    public RequerimentoCompensacao(int idRequerimentoCompensacao, TipoRegime tipoRegime, ServidorMatricula servidorMatricula, TipoRequerimento tipoRequerimento, TipoBeneficio tipoBeneficio, int qtTempoTotal, int qtTempoRgps, BigDecimal vlBeneficioConcessao, Date dtInicioBeneficio, Date dtCessacaoBeneficio, String dsProtocoloCertidao01, String dsTempoLiquido01, String dsProtocoloCertidao02, String dsTempoLiquido02, String dsProtocoloCertidao03, String dsTempoLiquido03, String dsProtocoloCertidao04, String dsTempoLiquido04, String dsOrgaoLotacao, Date dtIngresso, Date dtEmissor, Set indeferimentoRequerimentoCompensacaos) {
       this.idRequerimentoCompensacao = idRequerimentoCompensacao;
       this.tipoRegime = tipoRegime;
       this.servidorMatricula = servidorMatricula;
       this.tipoRequerimento = tipoRequerimento;
       this.tipoBeneficio = tipoBeneficio;
       this.qtTempoTotal = qtTempoTotal;
       this.qtTempoRgps = qtTempoRgps;
       this.vlBeneficioConcessao = vlBeneficioConcessao;
       this.dtInicioBeneficio = dtInicioBeneficio;
       this.dtCessacaoBeneficio = dtCessacaoBeneficio;
       this.dsProtocoloCertidao01 = dsProtocoloCertidao01;
       this.dsTempoLiquido01 = dsTempoLiquido01;
       this.dsProtocoloCertidao02 = dsProtocoloCertidao02;
       this.dsTempoLiquido02 = dsTempoLiquido02;
       this.dsProtocoloCertidao03 = dsProtocoloCertidao03;
       this.dsTempoLiquido03 = dsTempoLiquido03;
       this.dsProtocoloCertidao04 = dsProtocoloCertidao04;
       this.dsTempoLiquido04 = dsTempoLiquido04;
       this.dsOrgaoLotacao = dsOrgaoLotacao;
       this.dtIngresso = dtIngresso;
       this.dtEmissor = dtEmissor;
       this.indeferimentoRequerimentoCompensacaos = indeferimentoRequerimentoCompensacaos;
    }
   
     @Id 

    
    @Column(name="idRequerimentoCompensacao", unique=true, nullable=false)
    public int getIdRequerimentoCompensacao() {
        return this.idRequerimentoCompensacao;
    }
    
    public void setIdRequerimentoCompensacao(int idRequerimentoCompensacao) {
        this.idRequerimentoCompensacao = idRequerimentoCompensacao;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="idTipoRegime", nullable=false)
    public TipoRegime getTipoRegime() {
        return this.tipoRegime;
    }
    
    public void setTipoRegime(TipoRegime tipoRegime) {
        this.tipoRegime = tipoRegime;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="idMatriculaServidor", nullable=false)
    public ServidorMatricula getServidorMatricula() {
        return this.servidorMatricula;
    }
    
    public void setServidorMatricula(ServidorMatricula servidorMatricula) {
        this.servidorMatricula = servidorMatricula;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="idTipoRequerimento", nullable=false)
    public TipoRequerimento getTipoRequerimento() {
        return this.tipoRequerimento;
    }
    
    public void setTipoRequerimento(TipoRequerimento tipoRequerimento) {
        this.tipoRequerimento = tipoRequerimento;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="idTipoBeneficio", nullable=false)
    public TipoBeneficio getTipoBeneficio() {
        return this.tipoBeneficio;
    }
    
    public void setTipoBeneficio(TipoBeneficio tipoBeneficio) {
        this.tipoBeneficio = tipoBeneficio;
    }

    
    @Column(name="qtTempoTotal", nullable=false)
    public int getQtTempoTotal() {
        return this.qtTempoTotal;
    }
    
    public void setQtTempoTotal(int qtTempoTotal) {
        this.qtTempoTotal = qtTempoTotal;
    }

    
    @Column(name="qtTempoRgps", nullable=false)
    public int getQtTempoRgps() {
        return this.qtTempoRgps;
    }
    
    public void setQtTempoRgps(int qtTempoRgps) {
        this.qtTempoRgps = qtTempoRgps;
    }

    
    @Column(name="vlBeneficioConcessao", nullable=false, precision=15)
    public BigDecimal getVlBeneficioConcessao() {
        return this.vlBeneficioConcessao;
    }
    
    public void setVlBeneficioConcessao(BigDecimal vlBeneficioConcessao) {
        this.vlBeneficioConcessao = vlBeneficioConcessao;
    }

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="dtInicioBeneficio", nullable=false, length=23)
    public Date getDtInicioBeneficio() {
        return this.dtInicioBeneficio;
    }
    
    public void setDtInicioBeneficio(Date dtInicioBeneficio) {
        this.dtInicioBeneficio = dtInicioBeneficio;
    }

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="dtCessacaoBeneficio", length=23)
    public Date getDtCessacaoBeneficio() {
        return this.dtCessacaoBeneficio;
    }
    
    public void setDtCessacaoBeneficio(Date dtCessacaoBeneficio) {
        this.dtCessacaoBeneficio = dtCessacaoBeneficio;
    }

    
    @Column(name="dsProtocoloCertidao_01", length=23)
    public String getDsProtocoloCertidao01() {
        return this.dsProtocoloCertidao01;
    }
    
    public void setDsProtocoloCertidao01(String dsProtocoloCertidao01) {
        this.dsProtocoloCertidao01 = dsProtocoloCertidao01;
    }

    
    @Column(name="dsTempoLiquido01", length=6)
    public String getDsTempoLiquido01() {
        return this.dsTempoLiquido01;
    }
    
    public void setDsTempoLiquido01(String dsTempoLiquido01) {
        this.dsTempoLiquido01 = dsTempoLiquido01;
    }

    
    @Column(name="dsProtocoloCertidao02", length=23)
    public String getDsProtocoloCertidao02() {
        return this.dsProtocoloCertidao02;
    }
    
    public void setDsProtocoloCertidao02(String dsProtocoloCertidao02) {
        this.dsProtocoloCertidao02 = dsProtocoloCertidao02;
    }

    
    @Column(name="dsTempoLiquido02", length=6)
    public String getDsTempoLiquido02() {
        return this.dsTempoLiquido02;
    }
    
    public void setDsTempoLiquido02(String dsTempoLiquido02) {
        this.dsTempoLiquido02 = dsTempoLiquido02;
    }

    
    @Column(name="dsProtocoloCertidao03", length=23)
    public String getDsProtocoloCertidao03() {
        return this.dsProtocoloCertidao03;
    }
    
    public void setDsProtocoloCertidao03(String dsProtocoloCertidao03) {
        this.dsProtocoloCertidao03 = dsProtocoloCertidao03;
    }

    
    @Column(name="dsTempoLiquido03", length=6)
    public String getDsTempoLiquido03() {
        return this.dsTempoLiquido03;
    }
    
    public void setDsTempoLiquido03(String dsTempoLiquido03) {
        this.dsTempoLiquido03 = dsTempoLiquido03;
    }

    
    @Column(name="dsProtocoloCertidao04", length=23)
    public String getDsProtocoloCertidao04() {
        return this.dsProtocoloCertidao04;
    }
    
    public void setDsProtocoloCertidao04(String dsProtocoloCertidao04) {
        this.dsProtocoloCertidao04 = dsProtocoloCertidao04;
    }

    
    @Column(name="dsTempoLiquido04", length=6)
    public String getDsTempoLiquido04() {
        return this.dsTempoLiquido04;
    }
    
    public void setDsTempoLiquido04(String dsTempoLiquido04) {
        this.dsTempoLiquido04 = dsTempoLiquido04;
    }

    
    @Column(name="dsOrgaoLotacao", length=35)
    public String getDsOrgaoLotacao() {
        return this.dsOrgaoLotacao;
    }
    
    public void setDsOrgaoLotacao(String dsOrgaoLotacao) {
        this.dsOrgaoLotacao = dsOrgaoLotacao;
    }

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="dtIngresso", length=23)
    public Date getDtIngresso() {
        return this.dtIngresso;
    }
    
    public void setDtIngresso(Date dtIngresso) {
        this.dtIngresso = dtIngresso;
    }

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="dtEmissor", length=23)
    public Date getDtEmissor() {
        return this.dtEmissor;
    }
    
    public void setDtEmissor(Date dtEmissor) {
        this.dtEmissor = dtEmissor;
    }

@OneToMany(fetch=FetchType.LAZY, mappedBy="requerimentoCompensacao")
    public Set getIndeferimentoRequerimentoCompensacaos() {
        return this.indeferimentoRequerimentoCompensacaos;
    }
    
    public void setIndeferimentoRequerimentoCompensacaos(Set indeferimentoRequerimentoCompensacaos) {
        this.indeferimentoRequerimentoCompensacaos = indeferimentoRequerimentoCompensacaos;
    }




}


